home *** CD-ROM | disk | FTP | other *** search
/ Sky at Night 2007 June / SAN CD 6-2007 CD-ROM 25.iso / pc / Software / AstroGrav_Win / Java / jre1.6.0 / lib / rt.jar / sun / swing / DefaultLookup.class (.txt) < prev    next >
Encoding:
Java Class File  |  2006-11-29  |  2.2 KB  |  85 lines

  1. package sun.swing;
  2.  
  3. import java.awt.Color;
  4. import java.awt.Insets;
  5. import javax.swing.JComponent;
  6. import javax.swing.UIManager;
  7. import javax.swing.plaf.ComponentUI;
  8. import sun.awt.AppContext;
  9.  
  10. public class DefaultLookup {
  11.    private static final Object DEFAULT_LOOKUP_KEY = new StringBuffer("DefaultLookup");
  12.    private static Thread currentDefaultThread;
  13.    private static DefaultLookup currentDefaultLookup;
  14.    private static boolean isLookupSet;
  15.  
  16.    public static void setDefaultLookup(DefaultLookup var0) {
  17.       synchronized(DefaultLookup.class) {
  18.          if (isLookupSet || var0 != null) {
  19.             if (var0 == null) {
  20.                var0 = new DefaultLookup();
  21.             }
  22.  
  23.             isLookupSet = true;
  24.             AppContext.getAppContext().put(DEFAULT_LOOKUP_KEY, var0);
  25.             currentDefaultThread = Thread.currentThread();
  26.             currentDefaultLookup = var0;
  27.          }
  28.       }
  29.    }
  30.  
  31.    public static Object get(JComponent var0, ComponentUI var1, String var2) {
  32.       boolean var3;
  33.       synchronized(DefaultLookup.class) {
  34.          var3 = isLookupSet;
  35.       }
  36.  
  37.       if (!var3) {
  38.          return UIManager.get(var2, var0.getLocale());
  39.       } else {
  40.          Thread var10 = Thread.currentThread();
  41.          DefaultLookup var5;
  42.          synchronized(DefaultLookup.class) {
  43.             if (var10 == currentDefaultThread) {
  44.                var5 = currentDefaultLookup;
  45.             } else {
  46.                var5 = (DefaultLookup)AppContext.getAppContext().get(DEFAULT_LOOKUP_KEY);
  47.                if (var5 == null) {
  48.                   var5 = new DefaultLookup();
  49.                   AppContext.getAppContext().put(DEFAULT_LOOKUP_KEY, var5);
  50.                }
  51.  
  52.                currentDefaultThread = var10;
  53.                currentDefaultLookup = var5;
  54.             }
  55.          }
  56.  
  57.          return var5.getDefault(var0, var1, var2);
  58.       }
  59.    }
  60.  
  61.    public static int getInt(JComponent var0, ComponentUI var1, String var2, int var3) {
  62.       Object var4 = get(var0, var1, var2);
  63.       return var4 != null && var4 instanceof Number ? ((Number)var4).intValue() : var3;
  64.    }
  65.  
  66.    public static Insets getInsets(JComponent var0, ComponentUI var1, String var2, Insets var3) {
  67.       Object var4 = get(var0, var1, var2);
  68.       return var4 != null && var4 instanceof Insets ? (Insets)var4 : var3;
  69.    }
  70.  
  71.    public static boolean getBoolean(JComponent var0, ComponentUI var1, String var2, boolean var3) {
  72.       Object var4 = get(var0, var1, var2);
  73.       return var4 != null && var4 instanceof Boolean ? (Boolean)var4 : var3;
  74.    }
  75.  
  76.    public static Color getColor(JComponent var0, ComponentUI var1, String var2, Color var3) {
  77.       Object var4 = get(var0, var1, var2);
  78.       return var4 != null && var4 instanceof Color ? (Color)var4 : var3;
  79.    }
  80.  
  81.    public Object getDefault(JComponent var1, ComponentUI var2, String var3) {
  82.       return UIManager.get(var3, var1.getLocale());
  83.    }
  84. }
  85.